home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 418_02 / rasmol2 / render.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-03-02  |  2.3 KB  |  120 lines

  1. /* render.h
  2.  * RasMol2 Molecular Graphics
  3.  * Roger Sayle, February 1994
  4.  * Version 2.3
  5.  */
  6.  
  7. #define SlabReject       0x00
  8. #define SlabHalf         0x01
  9. #define SlabHollow       0x02
  10. #define SlabFinal        0x03
  11. #define SlabClose        0x04
  12. #define SlabSection      0x05
  13.  
  14. #define ColBits          24
  15.  
  16. #define VOXORDER       21
  17. #define VOXORDER2      (VOXORDER*VOXORDER)
  18. #define VOXSIZE        (VOXORDER2*VOXORDER)
  19.  
  20.  
  21. #ifdef RENDER
  22. int UseShadow, DisplayMode;
  23. int UseClipping,UseSlabPlane;
  24. int SlabMode, SlabValue;
  25. int SlabInten, SliceValue;
  26. int ImageRadius,ImageSize;
  27. int SSBondMode, HBondMode;
  28. int RibbonMode;
  29. int DrawBoundBox;
  30. int DrawUnitCell;
  31. int DrawAxes;
  32.  
  33. int VoxelsClean;
  34. int BucketFlag;
  35. int FBClear;
  36.  
  37. Pixel __huge *FBuffer;
  38. short __huge *DBuffer;
  39.  
  40. #ifdef IBMPC
  41. void __far * __far *HashTable;
  42. Byte __far * __far *LookUp;
  43. Card __far *ColConst;
  44. Byte __far *Array;
  45.  
  46. HGLOBAL FBufHandle;
  47. HGLOBAL DBufHandle;
  48. #else /* UNIX */
  49. void *HashTable[VOXSIZE];
  50. char *LookUp[120];
  51. int ColConst[120];
  52. char Array[7261];
  53. #endif
  54.  
  55. #else
  56. extern int UseShadow, DisplayMode;
  57. extern int UseClipping,UseSlabPlane;
  58. extern int SlabMode,SlabValue;
  59. extern int SlabInten,SliceValue;
  60. extern int ImageRadius,ImageSize;
  61. extern int SSBondMode, HBondMode;
  62. extern int RibbonMode;
  63. extern int DrawBoundBox;
  64. extern int DrawUnitCell;
  65. extern int DrawAxes;
  66.  
  67. extern int VoxelsClean;
  68. extern int BucketFlag;
  69. extern int FBClear;
  70.  
  71. extern Pixel __huge *FBuffer;
  72. extern short __huge *DBuffer;
  73.  
  74. #ifdef IBMPC
  75. extern void __far * __far *HashTable;
  76. extern Byte __far * __far *LookUp;
  77. extern Card __far *ColConst;
  78. extern Byte __far *Array;
  79.  
  80. extern HGLOBAL FBufHandle;
  81. extern HGLOBAL DBufHandle;
  82. #else /* UNIX */
  83. extern void *HashTable[VOXSIZE];
  84. extern char *LookUp[120];
  85. extern int ColConst[120];
  86. extern char Array[7261];
  87. #endif
  88.  
  89. #ifdef __STDC__
  90. void InitialiseRenderer();
  91. void ResetRenderer();
  92.  
  93. void ClearBuffers();
  94. void ReSizeScreen();
  95. void ReAllocBuffers();
  96. void ResetVoxelData();
  97. void CreateVoxelData();
  98. void ShadowTransform();
  99. void DrawFrame();
  100. void IdentifyAtom( int, int );
  101. int isqrt( Card );
  102.  
  103. #else /* non-ANSI C compiler */
  104. void InitialiseRenderer();
  105. void ResetRenderer();
  106.  
  107. void ClearBuffers();
  108. void ReSizeScreen();
  109. void ReAllocBuffers();
  110. void ResetVoxelData();
  111. void CreateVoxelData();
  112. void ShadowTransform();
  113. void DrawFrame();
  114. void IdentifyAtom();
  115. int isqrt();
  116.  
  117. #endif
  118. #endif
  119.  
  120.